package com.hua.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hua.common.Response;
import com.hua.domain.Category;
import com.hua.domain.CommodityInfo;
import com.hua.domain.domainVo.CommodityDetailVO;
import com.hua.domain.domainVo.CommodityInfoVo;
import com.hua.domain.domainVo.CommodityVo;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * @author cl
 * @description 针对表【commodity_info(商品的信息的表)】的数据库操作Service
 * @createDate 2022-10-19 11:14:23
 */
public interface CommodityInfoService extends IService<CommodityInfo> {

    /**
     * @Description: 获取商品列表
     * @Param: 无
     * @return: Response<List < CommodityInfo>>
     * @Author: 黄燕峰
     */
    Response<Map<String,List<CommodityInfo>>> getCommodityList();


    /**
     *
     * @return
     */
     Response<Map<String,List<CommodityVo>>> getAllCommodityInfoList();

     Response<String>insertCategory(CommodityInfoVo commodityInfo);

     Response<String> deleteInfoById(CommodityInfo commodityInfoId);

     Response<String> updateInfoById(CommodityInfoVo commodityInfoVo);


    /**
     * @Description: 根据商品种类删除所有该种类的商品
     * @Param: String categoryName
     * @return: void
     * @Author: 黄燕峰
     */
    void delete(String categoryName);


    /**
    * @Description: 根据商品所选的商品id集合删除所有商品
    * @Param: int[] ids
    * @return: int
    * @Author: 黄燕峰
    */
    Response<String> deleteByIds(List<Integer> ids);
    
    
    
    /** 
    * @Description:  
    * @Param:  
    * @return:  
    * @Author: 黄燕峰
    */
    Response<CommodityDetailVO> getCommodityDetail(Integer id);

}
